home *** CD-ROM | disk | FTP | other *** search
/ Windows Game Programming for Dummies (2nd Edition) / WinGamProgFD.iso / mac / DirectX SDK / DXSDK / include / DShowIDL / ddstream.idl < prev    next >
Text File  |  2001-10-08  |  2KB  |  87 lines

  1. //------------------------------------------------------------------------------
  2. // File: DDStream.idl
  3. //
  4. // Desc: Used by MIDL tool to generate ddstream.h
  5. //
  6. // Copyright (c) 1998-2001, Microsoft Corporation.  All rights reserved.
  7. //------------------------------------------------------------------------------
  8.  
  9.  
  10. import "unknwn.idl";
  11. import "mmstream.idl";
  12.  
  13. cpp_quote("//")
  14. cpp_quote("//   The following declarations within the 'if 0' block are dummy typedefs used to make")
  15. cpp_quote("//   the ddstream.idl file build.  The actual definitions are contained in DDRAW.H")
  16. cpp_quote("//")
  17. cpp_quote("#if 0")
  18. typedef void * LPDDSURFACEDESC;
  19. typedef struct tDDSURFACEDESC DDSURFACEDESC;
  20. cpp_quote("#endif")
  21. cpp_quote("#include <ddraw.h>")
  22.  
  23. enum {
  24.     DDSFF_PROGRESSIVERENDER = 0x00000001
  25. };
  26.  
  27. interface IDirectDraw;
  28. interface IDirectDrawSurface;
  29. interface IDirectDrawPalette;
  30.  
  31. interface IDirectDrawMediaStream;
  32. interface IDirectDrawStreamSample;
  33.  
  34. // IDirectDrawMediaStream
  35. [
  36. object,
  37. local,
  38. uuid(F4104FCE-9A70-11d0-8FDE-00C04FD9189D),
  39. pointer_default(unique)
  40. ]
  41. interface IDirectDrawMediaStream : IMediaStream
  42. {
  43.     HRESULT GetFormat(
  44.         [out]  DDSURFACEDESC *pDDSDCurrent,
  45.         [out]  IDirectDrawPalette **ppDirectDrawPalette,
  46.         [out]  DDSURFACEDESC *pDDSDDesired,
  47.         [out]  DWORD *pdwFlags);
  48.  
  49.     HRESULT SetFormat(
  50.         [in] const DDSURFACEDESC *pDDSurfaceDesc,
  51.         [in]  IDirectDrawPalette *pDirectDrawPalette);
  52.  
  53.     HRESULT GetDirectDraw(
  54.         [out] IDirectDraw **ppDirectDraw);
  55.  
  56.     HRESULT SetDirectDraw(
  57.         [in] IDirectDraw *pDirectDraw);
  58.  
  59.     HRESULT CreateSample(
  60.         [in]  IDirectDrawSurface *pSurface,
  61.         [in]  const RECT *pRect,
  62.         [in] DWORD dwFlags,
  63.         [out]IDirectDrawStreamSample **ppSample);
  64.  
  65.     HRESULT GetTimePerFrame(
  66.         [out] STREAM_TIME *pFrameTime);
  67. };
  68.  
  69.  
  70. // IDirectDrawStreamSample
  71. [
  72. object,
  73. local,
  74. uuid(F4104FCF-9A70-11d0-8FDE-00C04FD9189D),
  75. pointer_default(unique)
  76. ]
  77. interface IDirectDrawStreamSample : IStreamSample
  78. {
  79.     HRESULT GetSurface(
  80.         [out]  IDirectDrawSurface ** ppDirectDrawSurface,
  81.         [out]  RECT * pRect);
  82.  
  83.     HRESULT SetRect(
  84.         [in] const RECT * pRect);
  85.  
  86. };
  87.